package com.company.project.robot.emum;

import java.util.HashMap;
import java.util.Map;

/**
 *
 */
public enum RequestTypeEnum {
    /**
     * EventGroupMsg
     * 群消息事件（收到群消息时，运行这里）
     * 群消息事件，这里可开发的东西就比较多了！
     * EventFriendMsg
     * 私聊消息事件（收到私聊消息时，运行这里）
     * EventReceivedTransfer
     * 收到转账事件（收到好友转账时，运行这里）
     * EventScanCashMoney
     * 面对面收款（二维码收款时，运行这里）
     * EventFriendVerify
     * 好友请求事件
     * EventContactsChange
     * 朋友变动事件（当前为测试版(可爱猫还没提供)，还未启用，留以备用）
     * EventGroupMemberAdd
     * 群成员增加事件（新人进群）
     * EventGroupMemberDecrease
     * 群成员减少事件（群成员退出）
     * EventSysMsg
     * 系统消息事件
     * EventLogin
     * 新的账号登录成功/下线时
     */

    EventFriendMsg("EventFriendMsg", "私聊消息"),
    EventGroupMsg("EventGroupMsg", "群聊消息"),
    EventReceivedTransfer("EventReceivedTransfer", "收到转账事件"),
    EventScanCashMoney("EventScanCashMoney", "面对面收款"),
    EventFriendVerify("EventFriendVerify", "好友请求事件"),
    EventGroupMemberAdd("EventGroupMemberAdd", "群成员增加事件"),
    EventGroupMemberDecrease("EventGroupMemberDecrease", "群成员减少事件"),
    EventSysMsg("EventSysMsg", "系统消息事件"),
    EventLogin("EventLogin", "账号上线"),
    ;

    private String type;
    private String  desc;

    public static Map<String, RequestTypeEnum> map = new HashMap<String, RequestTypeEnum>();

    static {
        RequestTypeEnum[] enums = RequestTypeEnum.values();
        for (RequestTypeEnum e : enums){
            map.put(e.getType(), e);
        }
    }

    private RequestTypeEnum(String type, String desc){
        this.type = type;
        this.desc = desc;
    }

    public String getType() {
        return this.type;
    }

    public String getDesc() {
        return this.desc;
    }

    public RequestTypeEnum getEnum(String  type){
        return map.get(type);
    }

    public Map getEnumMap(){
        return map;
    }

}
